/** @type {import('next').NextConfig} */
const path = require('path')

const isProd = process.env.NODE_ENV === 'production'

// console.log( process.env.NODE_ENV, isProd, process.env )



const nextConfig = {
  // 基本路径
  basePath: isProd ? '/testlink' : '',
  // 使用严格模式 (react18 使用严格模式或在开发模式下useEffect会执行两次)
  reactStrictMode: false,
  // 自定义 sass 选项
  sassOptions: {
    includePaths: [path.join(__dirname, 'styles')],
  },
  // 添加自定义配置
  webpack: (config, { buildId, dev, isServer, defaultLoaders, webpack }) => {
    // console.log('自定义webpack配置', config, 'defaultLoaders ---- ', defaultLoaders)
    config.module.rules.push(
  //     {
  //       test: /\.(css|less|scss|sass)$/,
  //       use: [
  //         {
  //           // loader: 'string-replace-loader',
  //           // loader: 'css-loader',
  //           loader: "sass-loader",
  //           options: {
  //             // search: 'basic.scss',
  //             // replace: 'basic-[country].scss',
  //             modules: {
  //               localIdentName: "tgs_[path][name]__[local]--[hash:base64:5]",
  //             },
  //           }
  //         },
  //       ],
  //     }
      { // 添加 postcss-px-to-viewport 适配移动端，px -> vw
        // test: /\.module.scss$/,
        test: /\.module.scss$/,
        use: [
          {
            loader: "postcss-loader",
          },
          {
            loader: "sass-loader",
          },
        ],
        // 排除 node_modules 目录下的文件
        exclude: path.resolve(__dirname, "node_modules"),
      }
    )

    return config
  }
}

module.exports = nextConfig
